home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Languguage OS 2
/
Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO
/
language
/
embedded
/
mcu11
/
hc11help.arc
/
HC11WORK.ASM
< prev
next >
Wrap
Assembly Source File
|
1987-10-12
|
3KB
|
104 lines
*
*
* THIS FILE CONTAINS PROGRAM SEGMENTS TO PROGRAM AND ERASE
* THE ON-CHIP EEPROM
*
ORG $E000
*
* TO PROGRAM AN EEPROM BYTE
*
* ON ENTRY, A = DATA TO BE PROGRAMMED
* X = AN EEPROM ADDRESS
PROG LDAB #$02
STAB $103B SET EELAT BIT (EEPGM = 0)
STAA 0,X STORE DATA TO EEPROM ADDRESS
LDAB #$03
STAB $103B SET EEPGM BIT (EELAT = 1)
JSR DLY10 DELAY 10 MS
CLR $103B TURN OFF HIGH VOLTAGE AND SET TO READ MODE
HERE1 BRA HERE1
*
* TO BULK ERASE THE 512-BYTE EEPROM
*
* CONFIG REGISTER NOT AFFECTED
BULKE LDAB #$06
STAB $103B SET TO BULK ERASE MODE
STAB $B600 WRITE ANY DATA TO ANY EEPROM ADDRESS
LDAB #$07
STAB $103B TURN ON PROGRAMMING VOLTAGE
JSR DLY10 DELAY 10MS
CLR $103B TURN OFF HIGH VOLTAGE AND SET TO READ MODE
HERE2 BRA HERE2
*
* TO ERASE A ROW ( 16 BYTES)
*
* ON ENTRY, X = ANY ADDRESS IN THE ROW TO BE ERASED
ROWE LDAB #$0E
STAB $103B SET TO ROW ERASE MODE
STAB 0,X WRITE ANY DATA TO ANY ADDRESS IN ROW
LDAB #$0F
STAB $103B TURN ON HIGH VOLTAGE
JSR DLY10 DELAY 10MS
CLR $103B TURN OFF HIGH VOLTAGE AND SET TO READ MODE
HERE3 BRA HERE3
*
* TO ERASE A SINGLE BYTE
*
* ON ENTRY, X = ADDRESS OF BYTE TO BE ERASED
BYTEE LDAB #$16
STAB $103B SET TO BYTE ERASE MODE
STAB 0,X WRITE ANY DATA TO THE ADDRESS TO ERASE
LDAB #$17
STAB $103B TURN ON HIGH VOLTAGE
JSR DLY10 DELAY 10MS
CLR $103B TURN OFF HIGH VOLTAGE AND SET TO READ MODE
HERE4 BRA HERE4
*
* TO PROGRAM THE CONFIG REGISTER
*
* ON ENTRY, A = DATA TO BE PROGRAMMED INTO CONFIG REGISTER,
* CONFIG REGISTER HAD BEEN ERASED PREVIOUSLY
PROGC LDAB #$02
STAB $103B SET EELAT BIT (EEPGM = 0)
STAA $103F STORE DATA TO CONFIG ADDRESS
LDAB #$03
STAB $103B TURN ON PROGRAMMING VOLTAGE
JSR DLY10 DELAY 10MS
CLR $103B TURN OFF HIGH VOLTAGE AND SET TO READ MODE
HERE5 BRA HERE5
*
* TO ERASE THE CONFIG REGISTER
*
BULKC LDAB #$06
STAB $103B SET BULK ERASE MODE
STAB $103F WRITE ANY DATA TO CONFIG
LDAB #$07
STAB $103B TURN ON PROGRAMMING VOLTAGE
JSR DLY10 DELAY 10MS
CLR $103B TURN OFF HIGH VOLTAGE AND SET TO READ MODE
HERE6 BRA HERE6
*
* TO DELAY 10MS
*
DLY10 RTS PLEASE PUT IN YOUR OWN DELAY ROUTINE
*
* END OF PROGRAM SEGMENTS
*